package secondStage.part2.抽象类.three;

/**
 * @ClassName: [AnimalDemo]
 * @Description: 猫和狗抽象类案例
 * @Author: [黄劲松]
 * @CreateDate: [2021-03-14]
 * @Version: [v1.0]
 */
/*案例: 猫和狗
        需求:请采用抽象类的思想实现猫和狗的案例，
        并在测试类中进行测试
        思路:
        ①定义动物类(Animal)
        成员变量:姓名，年龄
        构造方法:无参，带参
        成员方法: get/set方法，吃饭();
        ②定义猫类(Cat),继承动物类
        构造方法:无参，带参
        成员方法:重写吃饭(){...}
        ③定义狗类(Dog),继承动物类
        构造方法:无参，带参
        成员方法:重写吃饭(){...}*/

public class AnimalDemo {
    public static void main(String[] args) {
        //创建对象，按照多态的方式
        Animal a = new Cat();
        a.setName("加菲猫");
        a.setAge(4);
        System.out.println(a.getName() + "," + a.getAge());
        a.eat();
        System.out.println("+++++++++++++++");

        a = new Cat("汤姆", 5);
        System.out.println(a.getName() + "," + a.getAge());
        a.eat();
    }
}
